'''
集合(set)的特点:不支持重复，内容无序,即集合自带去重
集合不支持下标索引访问
允许修改
'''
# 集合的定义
a = {2, 1, 3, 2, 1, 3, 2, 1, 3}          # {1, 2, 3}
# 空集合的定义
# 变量名 = set()
print(a)
'''
1.集合添加元素(无返回值)
语法:集合.add(元素)
'''
a.add(5)
print(a)                         # {1, 2, 3, 5}
'''
2.移除元素(无返回值)
语法:集合.remove(元素)
'''
a.remove(2)
print(a)                          # {1, 3, 5}
'''
3.从集合中随机取出一个元素(有返回值)
语法:集合.pop()
会得到一个元素的结果。同时集合本身被修改，元素移除
'''
b=a.pop()
print(a)                          # {3, 5}
print(b)                          # 1
'''
4.清空集合
语法:集合.clear()
'''
# a.clear()
# print(a)
'''
5.取两个集合的差集(取集合1里边有的，但集合2没有的)
语法:集合1.difference(集合2)
取出集合一
'''
x = {1, 2, 3}
z = {1, 2, 3, 4, 5}
y = z.difference(x)
print(y)                           # {4, 5}
'''
6.消除差集
语法:集合1.difference_update(集合2)
对比集合1和集合2，在集合1中删除和集合2相同的元素
结果:集合1被改变集合2不变
'''
z.difference_update(x)
print(x)                          # {1, 2, 3}
'''
7.合并两个集合
语法:集合1.union(集合2)
将集合1和集合2组合成新集合
'''
y = x.union(z)
print(y)                          # {1, 2, 3, 4, 5}
'''
8.统计集合元素数量
语法:len(集合)
'''
print(len(y))                     # 5
'''
9.集合的遍历
集合只能用for循环遍历不能用while遍历
'''
for i in y:
    print(i, end=' ')